package com.ruoyi.wvp.service;

import java.util.List;

import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.wvp.domain.AddressUnit;
import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.wvp.entity.AddressUnitList;

/**
 * 行政单位Service接口
 * 
 * @author ruoyi
 * @date 2024-07-22
 */
public interface IAddressUnitService extends IService<AddressUnit>{
    /**
     * 查询行政单位
     * 
     * @param id 行政单位主键
     * @return 行政单位
     */
    public AddressUnit selectAddressUnitById(Long id);

    /**
     * 查询行政单位列表
     * 
     * @param addressUnit 行政单位
     * @return 行政单位集合
     */
    public List<AddressUnit> selectAddressUnitList(AddressUnit addressUnit);

    /**
     * 新增行政单位
     * 
     * @param addressUnit 行政单位
     * @return 结果
     */
    public int insertAddressUnit(AddressUnit addressUnit);

    /**
     * 修改行政单位
     * 
     * @param addressUnit 行政单位
     * @return 结果
     */
    public int updateAddressUnit(AddressUnit addressUnit);

    /**
     * 批量删除行政单位
     * 
     * @param ids 需要删除的行政单位主键集合
     * @return 结果
     */
    public int deleteAddressUnitByIds(Long[] ids);

    /**
     * 删除行政单位信息
     * 
     * @param id 行政单位主键
     * @return 结果
     */
    public int deleteAddressUnitById(Long id);

     /**
        * 查询所有行政单位信息
        *
        * @return 结果
        */
    List<AddressUnit> listAll(AddressUnit addressUnit);
     /**
        * 分页查询行政单位信息
        *
        * @return 结果
        */
    Page<AddressUnit> pageList(Page<AddressUnit> page,AddressUnit addressUnit);

    int edit(AddressUnit addressUnit);


    String importData(List<AddressUnit> list, boolean updateSupport, String operName);

    void updateLevel();

    AddressUnitList streetList();


}
